$(function() {
    initArtCateList()
    let layer = layui.layer
    let form = layui.form
        // 获取文章分类列表
    function initArtCateList() {
        $.ajax({
            method: 'GET',
            url: '/my/article/cates',
            success: function(res) {
                // 调用模板函数 temlpate
                let htmlStr = template('tpl-table', res)
                    // 将模板字符串加进 tbody 
                $('tbody').html(htmlStr)
            }
        })
    }

    let indexAdd = null
        // 为添加类别的按钮绑定点击事件
    $('#btnAddCate').on('click', function() {
        indexAdd = layer.open({
            // 类型为 1 的话就是弹出页面
            type: 1,
            area: ['500px', '250px'],
            title: '添加文章分类',
            // 获取 id 为 dialog-add 的script 标签中的html内容
            content: $('#dialog-add').html()
        })
    })

    // 通过代理的方式 为表单添加 submit 事件
    $('body').on('submit', '#form-add', function(e) {
        e.preventDefault()
        $.ajax({
            method: 'POST',
            url: '/my/article/addcates',
            data: $(this).serialize(),
            success: function(res) {
                if (res.status !== 0) {
                    return layer.msg('新增分类失败！')
                }
                initArtCateList()
                layer.msg('新增分类成功！')
                    // 根据索引关闭对应的弹出层
                layer.close(indexAdd)

            }
        })
    })

    let indexEdit = null
    $('tbody').on('click', '.btn-edit', function() {
        // 弹出一个修改文章分类信息的层
        indexEdit = layer.open({
                type: 1,
                area: ['500px', '250px'],
                title: '修改文章分类',
                content: $('#dialog-edit').html()
            })
            // 获取当前行的 id 值
        let id = $(this).attr('data-id')
        console.log(id);
        $.ajax({
            method: 'GET',
            url: '/my/article/cates/' + id,
            success: function(res) {
                // console.log(res);
                // console.log(11);
                form.val('form-edit', res.data)
            }
        })
    })

    // 通过代理的形式为 表单绑定一个点击事件
    $('body').on('submit', '#form-edit', function(e) {
        e.preventDefault()
            // 发起 新的数据请求 给 编辑分类接口
        $.ajax({
            method: 'POST',
            url: '/my/article/updatecate',
            data: $(this).serialize(),
            success: function(res) {
                if (res.status !== 0) {
                    return layer.msg('更新分类数据失败')
                }
                layer.msg('更新分类数据成功')
                layer.close(indexEdit)
                initArtCateList()
            }
        })
    })

    // 通过代理的形式，为删除的按钮绑定点击事件
    $('tbody').on('click', '.btn-delete', function() {
        // 获取点击的按钮
        let id = $(this).attr('data-id')
        layer.confirm('确认删除？', { icon: 3, title: '提示' }, function(index) {
            $.ajax({
                method: 'GET',
                url: '/my/article/deletecate/' + id,
                success: function(res) {
                    if (res.status !== 0) {
                        return layer.msg('删除分类失败！')
                    }
                    layer.msg('删除分类成功！')
                    layer.close(index)
                    initArtCateList()
                }
            })
        })
    })
})